package cn.ydt.ydt.user.service;

import cn.ydt.ydt.pojo.user.dto.UserRegisterDTO;
import cn.ydt.ydt.pojo.user.dto.UserUpdateDTO;
import cn.ydt.ydt.pojo.user.model.User;
import cn.ydt.ydt.pojo.user.vo.UserShowInfoVO;

import java.text.ParseException;
import java.util.List;


public interface IUserService {

    /**
     * 用户注册
     * @param userRegisterDTO
     */
    void reg(UserRegisterDTO userRegisterDTO) throws ParseException;

    /**
     * 根据id查询用户
     * @param UserId
     * @return
     */
    UserShowInfoVO findUserById(Long UserId);




    //根据电话返回前端用户信息
    UserRegisterDTO findByUserPhone(String userPhone);

    void update(UserUpdateDTO userUpdateDTO) throws ParseException;

    /**
     * 根据isVolunteer
     * 查询所有用户
     */
    List<User> selectByIsVolunteer();

    //删除用户
    void isDeleted( Boolean isDeleted , Long userId);

    //添加图片地址进数据库
    void updateIcon(String userIcon);

    //返回前端图片
    String refillingIcon();

    /**
     *根据jwt的用户id查询用户信息
     * @return
     */
    UserShowInfoVO getUserByUserId();


    /**
     *查询当前社区的当前登录用户信息
     * @return
     */
    UserShowInfoVO getUserByUserIdToCommunityId(Long communityId);

}
